package day2;

import org.junit.Test;
//三角形打印
public class Demo {
	@Test
	//直角三角
	public void test1() {
		for (int i = 1; i <= 5; i++) {//控制行数
			
			for(int j = 1; j <= i ; j++) {//控制每行打印的个数
				System.out.print("*");
			}
			
			System.out.println();//控制打印完一行换行
		}
	}
	
	@Test
	//反方向直角三角
	public void test2() {
		for (int i = 1; i <= 5; i++) {//控制行数
			
			for(int k = 5;k >= i;k--) {//打印空格填充三角形,应为外部循环的倒序
				System.out.print(" ");
			}
			
			for(int j = 1; j <= i ; j++) {//控制每行打印的个数
				System.out.print("*");
			}
			
			System.out.println();//控制打印完一行换行
		}
	}
	
	
	@Test
	//正三角1
	public void test3() {
		for (int i = 1; i <= 5; i++) {//控制行数
			
			for(int k = 5;k >= i;k--) {//打印空格填充三角形,应为外部循环的倒序
				System.out.print(" ");
			}
			
			for(int j = 1; j <= i ; j++) {//控制每行打印的个数
				System.out.print("*");
			}
			
			for(int z = 1;z <= i-1 ;z++) {//打印一个小的三角形在右边,行数从第二行起
				System.out.print("*");
			}
			
			System.out.println();//控制打印完一行换行
		}
	}

	
	@Test
	//反正三角
	public void test4() {
		for (int i = 5; i >= 1; i--) {//控制行数
			
			for(int k = 5;k >= i;k--) {//打印空格填充三角形,应为外部循环的倒序
				System.out.print(" ");
			}
			
			for(int j = 1; j <= i ; j++) {//控制每行打印的个数
				System.out.print("*");
			}
			
			for(int z = 1;z <= i-1 ;z++) {//打印一个小的三角形在右边,行数从第二行起
				System.out.print("*");
			}
			
			System.out.println();//控制打印完一行换行
		}
	}
	
	@Test
	//正三角2
	public void test5() {
		for (int i = 1; i <= 5; i++) {
			
			for (int k = 5; k >= i; k--) {
				System.out.print(" ");
			}
			
			for (double j = 1; j <= i ; j+=0.5) {
				System.out.print("*");
			}
			
			System.out.println("");
		}
	}
	
	@Test
	//正三角3
	public void test6() {
		
		for (int i = 1; i <= 5; i++) {
			for (int k = 5; k >= i; k--) {//打印空格填充三角形,应为外部循环的倒序
				System.out.print(k);
			}
			
			// 控制打印个数
			// i = 1，k = 1;i = 2,k = 3
			for (int k = 0; k < 2 * i - 1; k++) {
				 // 当k = 行数的两倍 - 2时换行并打印，行数的两倍-2即为行尾
				if (k == 2 * i - 2) {
					System.out.println(k);
				} else {
					System.out.print("*");
				}
			}
		}

	}
	
	@Test
	public void test7() {
		for (int i = 1; i <= 6; i++) {
			for (int j = 1; j <= 6 - i; j++) {
				System.out.print(" ");
			}
			for (int j = 1; j <= 2 * i - 1; j++) {
				System.out.print("*");
			}
			
			System.out.println();
		}
	}
	
	//三角
		@Test
		public void test111() {
			for (int i = 1; i <= 9; i++) {// 控制行数
				for (int j = 1; j <= 9 - i; j++) {
					// 空格
					System.out.print(" ");
				}
				// 左边的三角形数字
				for (int j = 1; j <= i; j++) {
					System.out.print("*");
				}
				// 剩下的数字的规律
				// 右边的三角形
				for (int j = i - 1; j >= 1; j--) {
					System.out.print("*");
				}
				System.out.println();// 换行
			}
		}
}
